// @Description：wolagent相关的任务
package fasttask

import (

)

// @Description: 执行wolagent安装（wolagent install）的task
type InstallAgentTask struct {
    IP          string
    Msg         string
}

/**
 @Description：执行wolagent安装
 @Param:
 @Return：
 */
func (i *InstallAgentTask) Done()  {

    // todo: agent安装处理
    //if net.ParseIP(i.IP) == nil {
    //    return
    //}
	//
    //xxx := &dbmanager.WormId{}
    //err := xxxx.SelectValidByIP(i.IP)
    //if err != nil {
    //    device := ctrutil.GetMachineInfo(i.IP)
    //    if device == nil || device.DeviceStatus == "下架" || device.DeviceStatus == "故障" {
    //        var devStatus string
    //        if device == nil {
    //            devStatus = "查询失败"
    //        } else {
    //            devStatus = device.DeviceStatus + "|" + device.OsRelease
    //        }
    //        i.sendNotify2(devStatus)
    //    } else {
    //        errWk := ctrutil.WuKongInstallWolAgent(i.IP, "")
    //        if errWk != nil {
    //            i.sendNotify(errWk, fmt.Sprintf("%s|%s", device.DeviceStatus, device.OsRelease))
    //        }
    //    }
    //    return
    //}
	//
    //if xxxx.Status == dbmanager.WolAgentOffline {
    //    device := ctrutil.GetMachineInfo(i.IP)
    //    if device == nil || device.DeviceStatus == "下架" || device.DeviceStatus == "故障" {
    //        var devStatus string
    //        if device == nil {
    //            devStatus = "查询失败"
    //        } else {
    //            devStatus = device.DeviceStatus + "|" + device.OsRelease
    //        }
    //        i.sendNotify2(devStatus)
    //    } else {
    //        errWk := ctrutil.WuKongInstallWolAgent(i.IP, strconv.Itoa(xxxx.Version))
    //        if errWk != nil {
    //            i.sendNotify(errWk, fmt.Sprintf("%s|%s", device.DeviceStatus, device.OsRelease))
    //        }
    //    }
    //    return
    //}

    return
}
//
//// InstallWolAgentTask.sendNotify 发送TT通知
//func (i *InstallWolAgentTask) sendNotify(err error, devStatus string) {
//    ttItem := &unotify.IMNotifyItem{
//        Grade:       unotify.ErrorGrade,
//        Title:       unotify.DefaultTitle,
//        Msg:         fmt.Sprintf("%s，'%s'安装wolagent失败：%s, 米兰状态：%s", i.Msg, i.IP, err.Error(), devStatus),
//        IMUsers: []string{
//            "用学",
//        },
//    }
//    unotify.IMNotifyInst().SendAsync(ttItem)
//}
//
//func (i *InstallWolAgentTask) sendNotify2(devStatus string) {
//    ttItem := &unotify.IMNotifyItem{
//        Grade:       unotify.ErrorGrade,
//        Title:       unotify.DefaultTitle,
//        Msg:         fmt.Sprintf("%s，'%s'安装wolagent失败, 米兰状态：%s", i.Msg, i.IP, devStatus),
//        IMUsers: []string{
//            "用学",
//        },
//    }
//    unotify.IMNotifyInst().SendAsync(ttItem)
//}
//
//type RestartAgent struct {
//    IP          string
//}
//
//func (r *RestartAgent) Done()  {
//    errWk := ctrutil.WuKongInstallWolAgent(r.IP, "")
//    if errWk != nil {
//        r.sendNotify(errWk.Error())
//    }
//    return
//}
//
//func (r *RestartAgent) sendNotify(msg string) {
//    ttItem := &unotify.IMNotifyItem{
//        Grade:       unotify.ErrorGrade,
//        Title:       unotify.DefaultTitle,
//        Msg:         fmt.Sprintf("%s restart failed: %s", r.IP, msg),
//        IMUsers: []string{
//            "用学",
//        },
//    }
//    unotify.IMNotifyInst().SendAsync(ttItem)
//    return
//}